NAND flash memory, as well as other types of non-volatile memories (“NVMs”), are commonly used for mass storage. For example, consumer electronics such as portable media players often include raw flash memory or a flash card to store music, videos, and other media.
Conventional flash memory may include arrays of memory cells composed of floating gate transistors. Charge may be stored or left off of each transistor's floating gate in order to store bits of data. For example, the floating gate of a transistor may be charged to indicate a bit value of ‘0’ or may be left uncharged to indicate a bit value of ‘1.’ The charge or lack thereof may affect a transistor's threshold voltage, which a controller for the non-volatile memory may sense by applying a reference voltage to the transistor. Such non-volatile memories that store one bit per cell are commonly referred to as “single-level cell” (“SLC”) NVMs.
To increase the storage capacity of a non-volatile memory while maintaining a small NVM size, some current non-volatile memories may store multiple bits of data in each memory cell by varying the amount of charge stored in the floating gate of a transistor. Such NVMs that store more than one bit per cell are commonly referred to as “multi-level cell” (“MLC”) NVMs. Since multi-level cells may have lower reliability than single-level cells, some non-volatile memories may have portions of their memory cells pre-allocated for MLC storage and other portions of their memory cells pre-allocated for SLC storage.